﻿using System;
using System.Collections.Generic;
using Microsoft.Xna.Framework;
using Microsoft.Xna.Framework.Content;
using ShevaEngine.Core.Modules.Graphics;
using ShevaEngine.Core.Modules.Materials;
using Microsoft.Xna.Framework.Graphics;
using System.Collections.ObjectModel;

namespace ShevaEngine.Core.Modules.Models
{
    /// <summary>Sheva geometry.</summary>
    public class ModelGeometry : DrawCall
    {
        /// <summary>Material.</summary>
        [ContentSerializerIgnore]
        public Material Material;
        /// <summary>Material name.</summary>
        public string MaterialName;
        /// <summary>Bounding box.</summary>
        public BoundingBox BoundingBox;
        /// <summary>Vertex elements.</summary>
        public Collection<VertexElement> VertexElements;
        /// <summary>Vertex stride.</summary>
        public Int32? VertexStride;
        /// <summary>Vertex buffer data.</summary>
        public byte[] VBO;
        /// <summary>Index buffer data.</summary>
        public List<Int32> IBO;

        /// <summary>
        /// Konstruktor.
        /// </summary>
        public ModelGeometry()
            : base()
        {
        }        
    }
}
